package com.sdtv.mediunfusion.mvp.contract;

import com.sdtv.basemodule.bean.Results;
import com.sdtv.basemodule.http.AppHttpClient;
import com.sdtv.basemodule.mvp.IView;
import com.sdtv.mediunfusion.bean.AuditLoggingBean;
import com.sdtv.mediunfusion.bean.DepartmentBean;
import com.sdtv.mediunfusion.bean.MeltCallBean;
import com.sdtv.mediunfusion.bean.PunchBean;
import com.sdtv.mediunfusion.bean.SelectTopicBean;
import com.sdtv.mediunfusion.bean.TaskBean;
import com.sdtv.mediunfusion.http.ApiService;

import java.util.List;

/**
 * @ProjectName: MediunFusion
 * @Package: com.sdtv.mediunfusion.mvp.contract
 * @ClassName: MainContract
 * @Description: -MVP模式-- d
 * 定义这个类是为了少建点类！！
 * @Author: 小郭同学
 * @CreateDate: 2019-07-02 14:48
 * @UpdateRemark: 更新说明
 * @Version: 1.0
 */
public class MainContract {

    public static ApiService getAppService() {
        return (ApiService) AppHttpClient.getInstance().initService(ApiService.class);
    }

    public interface MainView extends IView {
        void changeText(String text);
    }

    /**
     * PunchFragment中使用的接口view
     */
    public interface PunchView extends IView {

        void setUserPunchInfo(List<PunchBean> loggingList);

        // 正常打卡返回
        void result(Results response);

        // 异常打开
        void punchFail();
    }

    /**
     * 通话记录列表
     */
    public interface MeltCallView extends IView {

        void setCallDataList(int totalCount, List<MeltCallBean> responseList);


    }

    /**
     * 外采任务列表的View
     */
    public interface TaskListView extends IView {

        void setListData(int totalCount, List<TaskBean> responseList);

    }

    /**
     * 我的选题列表的View
     */
    public interface SelectTopicListView extends IView {
        // 获取选题列表
        void setListData(int totalCount, List<SelectTopicBean> responseList);

        // 设置选题详情
        void setTopicInfo(SelectTopicBean selectTopicBean);


    }

    /**
     * 报题-审核记录view
     */
    public interface AuditLoggingView extends IView {

        void setAuditLogData(List<AuditLoggingBean> responseList);
    }

    /**
     * 部门列表
     */
    public interface DepartmentView extends IView {

        void setDepartmentList(List<DepartmentBean> responseList);
    }
}
